﻿using System;

namespace Simp.CodeModel
{
	/// <summary>Mode of simplification.</summary>
	/// <remarks>Passed to <see cref="IFunction.Simplify"/> in order to guide the simplification.</remarks>
	public enum SimplificationMode
	{
		/// <summary>
		/// Default mode.  In this mode, no approximation are allowed, hence the simplified function is perfectly equivalent
		/// to its former representation.
		/// </summary>
		PerfectEquivalent,
		/// <summary>
		/// Mode allowing further simplification, allowing approximation (e.g. integer into real, computing real function, etc.)
		/// </summary>
		AllowApproximation
	}
}